package com.theaf.basemodule.common.api;

import com.theaf.basemodule.common.dto.car.BrandDTO;
import com.theaf.basemodule.common.dto.car.CarSysDTO;
import com.theaf.basemodule.common.dto.car.CarTypeDTO;

import java.io.Serializable;
import java.util.List;

/**
 * @Author:songwenke
 * @Description:车型服务
 * @Date:create in 9:40 2018/3/19
 * @Modified By:
 **/
public interface CarTypeService {
    /**
     * 查询品牌
     * @param useType 用途类型
     * @return
     */
    List<BrandDTO> findAllBrand(String useType);

    /**
     * 查询品牌下的车系
     * @param id
     * @param useType 用途类型
     * @return
     */
    List<CarSysDTO> findCarSysByBrand(long id, String useType);

    /**
     * 查询车系下的车型
     * @param id
     * @param useType 用途类型
     * @return
     */
    List<CarTypeDTO> findCarTypeBySys(long id, String useType);

    /**
     * 保存品牌车系车型
     * @param vo
     * @return
     */
    long save(Serializable vo);

    /**
     * 查询单一车型数据
     * @param id
     * @return
     */
    CarTypeDTO findCarTypeById(Long id);
    /**
     * 查询单一车系数据
     * @param id
     * @return
     */
    CarSysDTO findCarSysById(Long id);

    /**
     * 删除品牌或车系或车型数据
     * @param id
     */
    void delete(Long id);
}
